home *** CD-ROM | disk | FTP | other *** search
/ Alde ADA 1: #1 / CCCC 8804 Volume 1 Number 1 - Alde.iso / C / MISC / FUNC / PROFF.ARC / PROFF.H < prev    next >
Encoding:
C/C++ Source or Header  |  1988-02-21  |  4.7 KB  |  215 lines

  1. #include "defs.h"
  2. #include "lookup.h"
  3.  
  4. #ifdef vms
  5. #define extern globalref
  6. #endif
  7.  /* next available char; init = 0 */
  8. extern int bp;
  9.  
  10.  /* pushed-back characters */
  11. extern char buf[BUFSIZE];
  12.  
  13.  /* stack of file descriptors */
  14. extern FILE *infile[NFILES];
  15.  
  16.  /* current file is infile[level] */
  17. extern int level;
  18.  
  19.  /* stack of output file descriptors */
  20. extern FILE *outfile[NFILES];
  21.  
  22.  /* current output file is outfile[olevel] */
  23. extern int olevel;
  24.  
  25.  /* current output file pointer */
  26. extern FILE *poutput;
  27.  
  28.  /* number registers a..z */
  29. extern int nr[26];
  30.  
  31.  /* system registers a..z */
  32. extern int nr[26];
  33.  
  34.  /* last char position in outbuf; init = 0 */
  35. extern int outp;
  36.  
  37.  /* width of text currently in outbuf; init = 0 */
  38. extern int outw;
  39.  
  40.  /* number of words in outbuf; init = 0 */
  41. extern int outwds;
  42.  
  43.  /* lines to be filled collect here */
  44. extern char outbuf[MAXOUT];
  45.  
  46.  /* word in outbuf; init=0 */
  47.  /* current output page number; init = 0 */
  48. extern int curpag;
  49.  
  50.  /* next output page number; init = 1 */
  51. extern int newpag;
  52.  
  53.  /* next line to be printed; init = 0 */
  54. extern int lineno;
  55.  
  56.  /* page length in lines; init = PAGELEN = 66 */
  57. extern int plval;
  58.  
  59.  /* page length save area */
  60. extern int savpl;
  61.  
  62.  /* margin before and including header */
  63. extern int m1val;
  64.  
  65.  /* margin after header */
  66. extern int m2val;
  67.  
  68.  /* margin after last text line */
  69. extern int m3val;
  70.  
  71.  /* bottom margin, including footer */
  72. extern int m4val;
  73.  
  74.  /* last live line on page, = plval-m3val-m4val */
  75. extern int bottom;
  76.  
  77.  /* top of page title for even pages;init=NEWLINE */
  78. extern char ehead[MAXLINE];
  79.  
  80.  /* top of page title for odd  pages;init=NEWLINE */
  81. extern char ohead[MAXLINE];
  82.  
  83.  /* left,right margins for even header;init=inval,rmval */
  84. extern int ehlim[2];
  85.  
  86.  /* left,right margins for odd  header;init=inval,rmval */
  87. extern int ohlim[2];
  88.  
  89.  /* bot of page title for even pages;init=NEWLINE */
  90. extern char efoot[MAXLINE];
  91.  
  92.  /* bot of page title for odd  pages;init=NEWLINE */
  93. extern char ofoot[MAXLINE];
  94.  
  95.  /* left,right margins for even footer;init=inval,rmval */
  96. extern int eflim[2];
  97.  
  98.  /* left,right margins for odd  footer;init=inval,rmval */
  99. extern int oflim[2];
  100.  
  101.  /* flag for pausing between pages */
  102. extern int stopx;
  103.  
  104.  /* first page to begin printing with */
  105. extern int frstpg;
  106.  
  107.  /* last page to be printed */
  108. extern int lastpg;
  109.  
  110.  /* flag to indicate whether page should be printed */
  111. extern int print;
  112.  
  113.  /* number of blanks to offset page by; init = 0 */
  114. extern int offset;
  115.  
  116.  /* verbose option; init = FALSE */
  117. extern int verbose;
  118.  
  119.  /* bolding option; init = YES; */
  120. extern char bolding;
  121.  
  122.  /* fill if YES; init = YES */
  123. extern int fill;
  124.  
  125.  /* current line spacing; init = 1 */
  126. extern int lsval;
  127.  
  128.  /* current indent; >= 0; init = 0 */
  129. extern int inval;
  130.  
  131.  /* current right margin; init = PAGEWIDTH = 60 */
  132. extern int rmval;
  133.  
  134.  /* current temporary indent; init = 0 */
  135. extern int tival;
  136.  
  137.  /* number of lines to center; init = 0 */
  138. extern int ceval;
  139.  
  140.  /* flag for continuous center */
  141. extern char CEon;
  142.  
  143.  /* number of lines to underline; init = 0 */
  144. extern int ulval;
  145.  
  146.  /* flag for continuous underline */
  147. extern char ULon;
  148.  
  149.  /* number of lines to boldface; init = 0 */
  150. extern int boval;
  151.  
  152.  /* flag for continuous bolding */
  153. extern char BDon;
  154.  
  155.  /* justification types for heads and foots; */
  156. extern int tjust[3];                   /* init = LEFT, CENTER, RIGHT */
  157.  
  158.  /* number of lines to blank suppress; init=0 */
  159. extern int bsval;
  160.  
  161.  /* right justify filled lines if YES; init=YES */
  162. extern int rjust;
  163.  
  164.  /* tab stops; init every 8 spaces */
  165. extern int tabs[INSIZE];
  166.  
  167.  /* line control character; init = PERIOD */
  168. extern char cchar;
  169.  
  170.  /* universal escape - init = UNDERBAR */
  171. extern char genesc;
  172.  
  173.  /* character used to underline a BLANK; init = BLANK */
  174. extern char ulblnk;
  175.  
  176.  /* scratch arrays for use by various routines */
  177. extern char tbuf1[MAXLINE];
  178. extern char tbuf2[MAXLINE];
  179. extern char tbuf3[MAXLINE];
  180. extern char ttl[MAXLINE];
  181.  
  182.  /* flag to process runoff symbols only */
  183. extern char onlyrunoff;
  184.  
  185.  /* flag to turn paging off */
  186. extern char paging;
  187.  
  188.  /* page number in roman numerals. Init = NO */
  189. extern char roman;
  190.  
  191.  /* autopar flag. Init = NO */
  192. extern char autopar;
  193.  
  194.  /* temporary indent value for autopar */
  195. extern int autoprv;
  196.  
  197.  /* hash tables for macros and variables */
  198. extern struct hashlist *macrotab[HASHMAX];
  199. extern struct hashlist *gentab[HASHMAX];
  200.  
  201.  /* linked list entries for contents     */
  202. extern struct clist *chead;
  203. extern struct clist *clast;
  204.  
  205.  /* keep track of the work - VERBOSE opt. */
  206.  
  207. extern int p_txtlines;
  208. extern int p_outlines;
  209. extern int p_outpages;
  210. extern int p_memoryus;
  211.  
  212. #ifdef vms
  213. #undef extern
  214. #endif
  215.